home *** CD-ROM | disk | FTP | other *** search
-
-
-
- ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt((((3333GGGG)))) OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt((((3333GGGG))))
-
-
-
- NNNNAAAAMMMMEEEE
- ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt - select GLX events for a window or a GLX pixel buffer
-
-
- CCCC SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
- void ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt( Display *_d_p_y,
- GLXDrawable _d_r_a_w_a_b_l_e,
- unsigned long _e_v_e_n_t__m_a_s_k )
-
-
- PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
- _d_p_y Specifies the connection to the X server.
-
- _d_r_a_w_a_b_l_e Specifies a GLX drawable. Must be a GLX pixel buffer or a
- window.
-
- _e_v_e_n_t__m_a_s_k Specifies the events to be returned for _d_r_a_w_a_b_l_e.
-
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt sets the GLX event mask for a GLX pixel buffer or a
- window. Calling ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt overrides any previous event mask that was
- set by the client for _d_r_a_w_a_b_l_e. Note that it does not affect the event
- masks that other clients may have specified for _d_r_a_w_a_b_l_e since each
- client rendering to _d_r_a_w_a_b_l_e has a separate event mask for it.
-
- Currently, only one GLX event, GGGGLLLLXXXX____PPPPBBBBUUUUFFFFFFFFEEEERRRR____CCCCLLLLOOOOBBBBBBBBEEEERRRR____MMMMAAAASSSSKKKK, can be selected.
- The following data is returned to the client when a
- GGGGLLLLXXXX____PPPPBBBBUUUUFFFFFFFFEEEERRRR____CCCCLLLLOOOOBBBBBBBBEEEERRRR____MMMMAAAASSSSKKKK event occurs:
-
- typdef struct {
- int _e_v_e_n_t__t_y_p_e; /* GLX_DAMAGED or GLX_SAVED */
- int _d_r_a_w__t_y_p_e; /* GLX_WINDOW or GLX_PBUFFER */
- unsigned long _s_e_r_i_a_l; /* # of last request processed by server */
- Bool _s_e_n_d__e_v_e_n_t; /* true if this came for SendEvent request */
- Display *_d_i_s_p_l_a_y; /* display the event was read from */
- GLXDrawable _d_r_a_w_a_b_l_e; /* i.d. of Drawable */
- unsigned int _b_u_f_f_e_r__m_a_s_k; /* mask indicating affectedbuffers */
- int _x, _y;
- int _w_i_d_t_h, _h_e_i_g_h_t;
- int _c_o_u_n_t; /* if nonzero, at least this many more */
- } GLXPbufferClobberEvent;
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt((((3333GGGG)))) OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt((((3333GGGG))))
-
-
-
- The valid bit masks used in _b_u_f_f_e_r__m_a_s_k are:
-
- _____________________________________________________
- BBBBiiiittttmmmmaaaasssskkkk CCCCoooorrrrrrrreeeessssppppoooonnnnddddiiiinnnngggg BBBBuuuuffffffffeeeerrrr
- _____________________________________________________
- GGGGLLLLXXXX____FFFFRRRROOOONNNNTTTT____LLLLEEEEFFFFTTTT____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Front left color buffer
- GGGGLLLLXXXX____FFFFRRRROOOONNNNTTTT____RRRRIIIIGGGGHHHHTTTT____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Front right color buffer
- GGGGLLLLXXXX____BBBBAAAACCCCKKKK____LLLLEEEEFFFFTTTT____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Back left color buffer
- GGGGLLLLXXXX____BBBBAAAACCCCKKKK____RRRRIIIIGGGGHHHHTTTT____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Back right color buffer
- GGGGLLLLXXXX____AAAAUUUUXXXX____BBBBUUUUFFFFFFFFEEEERRRRSSSS____BBBBIIIITTTT Auxillary buffer
- GGGGLLLLXXXX____DDDDEEEEPPPPTTTTHHHH____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Depth buffer
- GGGGLLLLXXXX____SSSSTTTTEEEENNNNCCCCIIIILLLL____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Stencil buffer
- GGGGLLLLXXXX____AAAACCCCCCCCUUUUMMMM____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT Accumulation buffer
- _____________________________________________________
-
- A single X server operation can cause several buffer clobber events to be
- sent. (e.g., a single GLX pixel buffer may be damaged and cause multiple
- buffer clobber events to be generated). Each event specifies one region
- of the GLX drawable that was affected by the X Server operation. The
- _b_u_f_f_e_r__m_a_s_k field indicates which color buffers and ancillary buffers
- were affected. All the buffer clobber events generated by a single X
- server action are guaranteed to be contiguous in the event queue. The
- conditions under which this event is generated and the _e_v_e_n_t__t_y_p_e varies,
- depending on the type of the GLX drawable.
-
- When the GGGGLLLLXXXX____AAAAUUUUXXXX____BBBBUUUUFFFFFFFFEEEERRRRSSSS____BBBBIIIITTTT is set in _b_u_f_f_e_r__m_a_s_k, then _a_u_x__b_u_f_f_e_r is
- set to indicate which buffer was affected. If more than one aux buffer
- was affected, then additional events are generated as part of the same
- contiguous event group. Each additional event will have only the
- GGGGLLLLXXXX____AAAAUUUUXXXX____BBBBUUUUFFFFFFFFEEEERRRRSSSS____BBBBIIIITTTT set in _b_u_f_f_e_r__m_a_s_k, and the _a_u_x__b_u_f_f_e_r field will be
- set appropriately. For nonstereo drawables, GGGGLLLLXXXX____FFFFRRRROOOONNNNTTTT____LLLLEEEEFFFFTTTT____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT and
- GGGGLLLLXXXX____BBBBAAAACCCCKKKK____LLLLEEEEFFFFTTTT____BBBBUUUUFFFFFFFFEEEERRRR____BBBBIIIITTTT are used to specify the front and back color
- buffers.
-
- For preserved GLX pixel buffers, a buffer clobber event with type
- GGGGLLLLXXXX____SSSSAAAAVVVVEEEEDDDD is generated whenever the contents of the GLX pixel buffer is
- moved out of offscreen memory. The event(s) describes which portions of
- the GLX pixel buffer were affected. Clients who receive many buffer
- clobber events, referring to different save actions, should consider
- freeing the GLX pixel buffer resource in order to prevent the system from
- thrashing due to insufficient resources.
-
- For an unpreserved GLXPbuffer, a buffer clobber event, with type
- GGGGLLLLXXXX____DDDDAAAAMMMMAAAAGGGGEEEEDDDD, is generated whenever a portion of the GLX pixel buffer
- becomes invalid. The client may wish to regenerate the invalid portions
- of the GLX pixel buffer.
-
- For Windows, buffer clobber events, with type GGGGLLLLXXXX____SSSSAAAAVVVVEEEEDDDD, occur whenever
- an ancillary buffer, associated with the window, gets clobbered or moved
- out of offscreen memory. The event contains information indicating which
- color buffers and ancillary buffers-and which portions of those buffers-
- were affected.
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt((((3333GGGG)))) OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt((((3333GGGG))))
-
-
-
- NNNNOOOOTTTTEEEESSSS
- ggggllllXXXXSSSSeeeelllleeeeccccttttEEEEvvvveeeennnntttt is available only if the GLX version is 1.3 or greater.
-
- If the GLX version is 1.1 or 1.0, the GL version must be 1.0. If the GLX
- version is 1.2, then the GL version must be 1.1. If the GLX version is
- 1.3, then the GL version must be 1.2.
-
- EEEERRRRRRRROOOORRRRSSSS
- GGGGLLLLXXXXBBBBaaaaddddDDDDrrrraaaawwwwaaaabbbblllleeee is generated if _d_r_a_w_a_b_l_e is not a valid window or a valid
- GLX pixel buffer.
-
- AAAASSSSSSSSOOOOCCCCIIIIAAAATTTTEEEEDDDD GGGGEEEETTTTSSSS
- ggggllllXXXXGGGGeeeettttSSSSeeeelllleeeecccctttteeeeddddEEEEvvvveeeennnntttt
-
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- ggggllllXXXXCCCCrrrreeeeaaaatttteeeePPPPbbbbuuuuffffffffeeeerrrr
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-